/**
 * 给定一个数组，元素取值范围在[0, 36500]
 * 给定Q个询问[s, e]，问区间内是否存一对数差值小于365
 * 如果区间范围大于等于100，必然存在
 * 否则暴力排序逐个检查即可
 */
#include <bits/stdc++.h>
using namespace std;

#include <bits/extc++.h>
using namespace __gnu_pbds;

using llt = long long;
using Real = double;
using vi = vector<int>;

int N;
int Q;
vi A;

const array<string, 2> ANS = {"NO", "YES"};

int proc(int s, int e){
    if(e >= s + 100) return 1;
    vi vec(A.begin() + s, A.begin() + e + 1);
    sort(vec.begin(), vec.end());
    for(int i=1,n=vec.size();i<n;++i){
        if(vec[i] - vec[i - 1] <= 365) return 1;
    }
    return 0;
}

int main(){
#ifndef ONLINE_JUDGE
    freopen("z.txt", "r", stdin);
#endif
    ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(0);
    cin >> N >> Q;
    A.assign(N, {});
    for(auto & i : A) cin >> i;
    for(int s,e,q=1;q<=Q;++q){
        cin >> s >> e;
        cout << ANS[proc(s - 1, e - 1)] << "\n"; 
    }
    return 0;
}